
package de.justphil.tcg.tcgserver.game.mechanics.game;

/**
 * 
 * @author Martin
 * 
 */
public interface GameProgressObservable {
	
	/**
	 * Adds a listener to the observable
	 * 
	 * @param onGameProgressListener the listener
	 * @param update if true the listener will instantly be notified about the state of all slots
	 */
	void addOnGameProgressListener(OnGameProgressListener onGameProgressListener, boolean update);
	
	/**
	 * Removes a listener from the observable
	 * 
	 * @param onGameProgressListener the listener
	 * @return true if the listener could be removed, false otherwise.
	 */
	boolean removeOnGameProgressListener(OnGameProgressListener onGameProgressListener);
}
